mod related_type;
mod reload_ops;
mod full_qualify_1;
mod full_qualify_2;
mod super_trait;
mod new_type;

use std::ops::Add;
use reload_ops::{Point, Meters, Millimeters};
fn main() {
    println!("Hello, world!");
    let p1 = Point { x: 1, y: 2 };
    let p2 = Point { x: 3, y: 4 };
    // assert_eq!(p1 + p2, Point { x: 4, y: 6 });
    let p3 = p1+p2;
    println!("{:?}", p3);
    let meter = Meters(10.0 as u32);
    let millimeter = Millimeters(1000.0 as u32);
    println!("{:?}", millimeter.add(meter));
}
